from abc import ABCMeta, abstractmethod

class MSG(metaclass=ABCMeta):

    @property
    @abstractmethod
    def _type_check():
        pass

    @_type_check.setter
    @abstractmethod
    def _type_check():
        pass 

    @property
    @abstractmethod
    def _subclasses():
        pass
     
    @_subclasses.setter
    @abstractmethod
    def _subclasses():
        pass 

    @abstractmethod
    class Type():
        pass

    @classmethod 
    @abstractmethod
    def add_subclass(cls):
        pass
